System and method for navigation of a multimedia container

ABSTRACT

A system and method for managing a multimedia container. The method receiving, within a mobile device, a request to add a first object to a multimedia container and accessing a data store corresponding to the multimedia container. The multimedia container is operable to comprise one or more applications, widgets, and pieces of content. A first size attribute corresponds to the multimedia container. The method further includes adding the first object to the multimedia container and adjusting the first size attribute corresponding to the multimedia container. The first size attribute of the multimedia container is increased based on a second size attribute of the first object.

CROSS REFERENCE TO RELATED APPLICATIONS

This application claims the benefit of and priority to the copending provisional patent application Ser. No. 61/697,077, Attorney Docket Number 21191-164/VK, entitled “SYSTEM AND METHOD OF PROVIDING A USER INTERFACE ON A MOBILE DEVICE,” with filing date Sep. 5, 2012, and hereby incorporated by reference in its entirety.

This application is related to non-provisional patent application Ser. No. 13/901,363, Attorney Docket Number KOBO-0001, entitled “SYSTEM AND METHOD FOR A MULTIMEDIA CONTAINER,” with filing date May 23, 2013, and hereby incorporated by reference in its entirety.

This application is related to non-provisional patent application Ser. No. 13/901,429, Attorney Docket Number KOBO-0002, entitled “SYSTEM AND METHOD FOR MANAGING OBJECTS IN A MULTIMEDIA CONTAINER,” with filing date May 23, 2013, and hereby incorporated by reference in its entirety.

This application is related to non-provisional patent application Ser. No. 13/901,465, Attorney Docket Number KOBO-0003, entitled “SYSTEM AND METHOD FOR DISPLAYING A MULTIMEDIA CONTAINER,” with filing date May 23, 2013, and hereby incorporated by reference in its entirety.

This application is related to non-provisional patent application Ser. No. 13/901,498, Attorney Docket Number KOBO-0004, entitled “SYSTEM AND METHOD FOR A HOME MULTIMEDIA CONTAINER,” with filing date May 23, 2013, and hereby incorporated by reference in its entirety.

This application is related to non-provisional patent application Ser. No. 13/931,563, Attorney Docket Number KOBO-0005, entitled “SYSTEM AND METHOD FOR A GRAPHICAL USER INTERFACE INCLUDING RECOMMENDATIONS,” with filing date Jun. 28, 2013, and hereby incorporated by reference in its entirety.

This application is related to non-provisional patent application, Ser. No. ______, Attorney Docket Number KOBO-0026, entitled “SYSTEM AND METHOD FOR HOME SCREEN NAVIGATION,” with filing date ______, 2013, and hereby incorporated by reference in its entirety.

FIELD OF THE INVENTION

Embodiments of the present invention are generally related to graphical user interfaces that may be part of a mobile device operating system.

BACKGROUND

As computing technology has advanced, computers have become smaller and more portable thereby bringing about powerful handheld devices capable of performing functions of more traditional computing technology. At the same time operating systems for handheld devices or mobile devices have been developed to better suit handheld devices. Such operating systems have conventionally been focused around applications. For example, upon turning on a handheld device, the user is presented with a fixed grid of icons of representing applications that the user can choose from.

In such an application or “app centric” interface, the fixed grid of icons is presented to a user on one or more pages. Each page is sized according to the screen size of the device. In other words, a fixed number of application icons are displayed one screen at a time and a user navigates between discrete pages of application icons. Each application icon is restricted to being on one page or another. A user is thus constrained to viewing application icons on discrete pages in a fixed grid layout.

SUMMARY OF THE INVENTION

Accordingly, what is needed is a solution to allow flexible navigation of objects on a mobile device. Embodiments of the present invention allow a user of navigate a plurality of objects (e.g., pieces of content, applications, widgets, and multimedia containers) in a contiguous area (e.g., via scrolling). Embodiments of the present invention further allow display of objects in a multimedia container that span a border or edge of a screen. As objects (e.g., pieces of content, applications, and widgets) are added to a multimedia container, the space allocated to the multimedia container is dynamically increased to allow display of the added objects (e.g., in a contiguous scrollable area).

In one embodiment, the present invention is directed to a method for managing a multimedia container. The method receiving, within a mobile device, a request to add a first object to a multimedia container and accessing a data store corresponding to the multimedia container. The multimedia container is operable to comprise one or more applications, widgets, and pieces of content. In one exemplary embodiment, the first object is a piece of content. A first size attribute corresponds to the multimedia container. The method further includes adding the first object to the multimedia container and adjusting the first size attribute corresponding to the multimedia container. The first size attribute of the multimedia container is increased based on a second size attribute of the first object. The first size attribute of the multimedia container may be dynamically configured based on a plurality of objects within the multimedia container.

The method may further include determining an image corresponding to the first object and determining the second size attribute based on the image. The image may be user resizable. The method may further include receiving a request to resize the image corresponding to the first image and adjusting the first size attribute corresponding to the multimedia container based on the request to resize the image. The image corresponding to the first object may be operable to extend beyond a screen during display.

In one embodiment, the present invention is directed toward a computer-readable storage medium having stored thereon, computer executable instructions that, if executed by a computer system cause the computer system to perform a method for rendering a graphical user interface. The method includes displaying, on a mobile device (e.g., a tablet computing device), a first subset of a plurality of objects of a multimedia container and receiving an input. The input may comprises a navigation command received via a touch screen of the mobile device. The multimedia container is operable to comprise one or more applications, widgets, and pieces of content. In one embodiment, the plurality of objects of the multimedia container extends beyond a display of the mobile device.

In response to the input, a second subset of the plurality objects of the multimedia container and a portion of the first subset of plurality of objects of the multimedia container may be displayed (e.g., in a scrolling manner). The second subset of the plurality of objects of the multimedia container and the portion of the first subset of the plurality of objects of the multimedia container may be simultaneously displayed. In one exemplary embodiment, the first subset of the plurality of objects and the second subset of the plurality of objects are displayed in a contiguous scrolling area.

The displaying of the first subset of objects of the plurality of objects of the multimedia container and the second subset of the plurality of objects of the multimedia container comprises displaying images corresponding to each object of the first subset and second subset of the plurality of objects of the multimedia container. In one embodiment, an image corresponding to a first object of the first subset of the plurality of objects extends beyond an edge of the display of the mobile device during the displaying of the first subset of the plurality of objects of the multimedia container. A portion of an image corresponding to a first object of the first subset of the plurality of objects may be displayed adjacent to the edge of the display of the mobile device during the displaying of the first subset of the plurality of objects of the multimedia container.

In another embodiment, the present invention is implemented as a system for rendering a graphical user interface. The system includes a data store access module operable to access a data store, within a mobile device, corresponding to a multimedia container and an input module operable to receive input for adding an object to the multimedia container. In one embodiment, the multimedia container is operable to comprise one or more applications, widgets, and pieces of content. The system further includes a size module operable to adjust a size corresponding to the multimedia container based on an object to be added to the multimedia container and a display module operable to display a respective image for each object of a subset of a plurality of objects of the multimedia container and operable for scrolling navigation of the multimedia container. In one exemplary embodiment, the display module is operable for navigation of the multimedia container in a contiguous scrolling area. In one embodiment, the size corresponding to the multimedia container is a horizontal size and the input module is operable to receive input for resizing an image corresponding to the object to be added to the multimedia container. The size module may be operable to adjust the size corresponding to the multimedia container to be greater than at least one of a height or a width of a screen of the mobile device. The size module may be operable to dynamically increase and decrease the size corresponding to the multimedia container based on a plurality of objects of the multimedia container.

BRIEF DESCRIPTION OF THE DRAWINGS

Embodiments of the present invention are illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements.

FIG. 1 shows an exemplary mobile device and an exemplary graphical user interface in accordance with one embodiment of the present invention.

FIG. 2 shows an exemplary graphical user interface of a multimedia container comprising more objects than fit on a display of an exemplary device in accordance with one embodiment of the present invention.

FIG. 3 shows a flowchart of an exemplary computer controlled process for managing a multimedia container in accordance with one embodiment of the present invention.

FIG. 4 shows an exemplary graphical user interface of a multimedia container during navigation in accordance with one embodiment of the present invention.

FIG. 5 shows a flowchart of an exemplary computer controlled process for displaying objects of a multimedia container during navigation in accordance with one embodiment of the present invention.

FIG. 6 an exemplary graphical user interface of a page or “screen” in accordance with one embodiment of the present invention.

FIG. 7 shows a block diagram of exemplary computing system and corresponding modules, in accordance with one embodiment of the present invention.

DETAILED DESCRIPTION OF THE INVENTION

Reference will now be made in detail to the preferred embodiments of the present invention, examples of which are illustrated in the accompanying drawings. While the invention will be described in conjunction with the preferred embodiments, it will be understood that they are not intended to limit the invention to these embodiments. On the contrary, the invention is intended to cover alternatives, modifications and equivalents, which may be included within the spirit and scope of the invention as defined by the appended claims. Furthermore, in the following detailed description of embodiments of the present invention, numerous specific details are set forth in order to provide a thorough understanding of the present invention. However, it will be recognized by one of ordinary skill in the art that the present invention may be practiced without these specific details. In other instances, well-known methods, procedures, components, and circuits have not been described in detail as not to unnecessarily obscure aspects of the embodiments of the present invention.

Notation and Nomenclature:

Some portions of the detailed descriptions, which follow, are presented in terms of procedures, steps, logic blocks, processing, and other symbolic representations of operations on data bits within a computer memory. These descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. A procedure, computer executed step, logic block, process, etc., is here, and generally, conceived to be a self-consistent sequence of steps or instructions leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated in a computer system. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.

It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions, it is appreciated that throughout the present invention, discussions utilizing terms such as “processing” or “accessing” or “executing” or “storing” or “rendering” or the like, refer to the action and processes of an integrated circuit (e.g., system 700 of FIG. 7), or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.

Exemplary System and Method for Scrolling within a Multimedia Container

Embodiments of the present invention allow a user of navigate a plurality of objects (e.g., pieces of content, applications, widgets, and multimedia containers) in a contiguous area (e.g., via scrolling). Embodiments of the present invention further allow display of objects in a multimedia container that span a border or edge of a screen. As objects (e.g., pieces of content, applications, and widgets) are added to a multimedia container, the space allocated to the multimedia container is dynamically increased to allow display of the added objects (e.g., in a contiguous scrollable area).

Embodiments of the present invention are operable for custom layout of objects (e.g., pieces of content, applications, widgets, and multimedia containers) represented by corresponding images. In others words, a user customizable flexible organization structure of objects is facilitated. Embodiments of the present invention are thus flexible (e.g., objects are resizable and have customizable locations) and do not require objects to be displayed within a given page.

FIGS. 1, 2, 4, and 6 illustrate example components used by various embodiments of the present invention. Although specific components are disclosed in FIGS. 1, 2, 4, and 6, it should be appreciated that such components are exemplary. That is, embodiments of the present invention are well suited to having various other components or variations of the components recited in FIGS. 1, 2, 4, and 6. It is appreciated that the components in FIGS. 1, 2, 4, and 6 may operate with other components than those presented, and that not all of the components of FIGS. 1, 2, 4, and 6 may be required to achieve the goals of embodiments of the present invention.

FIG. 1 shows an exemplary mobile device and an exemplary multimedia container of an exemplary graphical user interface in accordance with one embodiment of the present invention. FIG. 1 depicts an exemplary graphical user interface comprising an exemplary multimedia container displayed by a device (e.g., tablet computing device, mobile phone, smartphone, or the like) and a recommendations area.

In one embodiment, device 100 is a mobile computing device (e.g., tablet). Device 100 comprises speakers 130 and display or screen 102. In one embodiment, screen 102 is a touch sensitive (e.g., capacitive touch screen) operable to receive input (e.g., from a user via one or more fingers) and display a graphical user interface. Speakers 130 are operable for output of audio during rendering of content (e.g., video, video games, animations, system functions, etc.).

Device 100 is operable to render a graphical user interface comprising a multimedia container. A multimedia container is a graphically navigable container that is operable to hold various objects of various media types (e.g., content), applications, and widgets. A multimedia container may include other multimedia containers therein which may further include respective content, applications, widgets, etc. Multimedia containers display content in a pictorial manner thereby surfacing content for immediate consumption.

FIG. 1 depicts an exemplary graphical user interface rendered by device 100. The exemplary graphical user interface comprises search icon 104, voice recognition icon 106, container name 108, applications icon 110, object area 112, recommendation area 120, and controls icon 160-164. It is noted the objects within the multimedia container described below are exemplary and embodiments of the present invention can support more or less objects.

Object area 112 comprises pieces of content, application icons, and widgets of a multimedia container. In one exemplary embodiment, object area 112 includes image 140, website image 142, video image 144, application icon 146, widget 148, and multimedia container image 150. Pieces of content may be shown in pictorial form (e.g., without filenames). Objects in object area 112 to be resized by a user. Objects within object area 112 are selectable to launch a corresponding application or corresponding application for rendering content corresponding to the object in object area 112. Objects within object area 112 may be moved around (e.g., via dragging after selection via pressing and holding) or resized (e.g., via pressing and holding and manipulating a size control).

Image 140 is an image (e.g., scaled image, thumbnail, or the like) corresponding to an image that is stored on device 100. In one exemplary embodiment, image 140 is a scaled version of a child playing basketball (e.g., without a filename). Image 140 is selectable (e.g., via a touch or press) and is operable to launch an image viewing application to display an image corresponding to image 140 at full resolution. For example, a user can view image 140 at one resolution within the multimedia container and to see more detail a user can select image 140 to see the high resolution image that image 140 corresponds thereto.

Website image 142 corresponds to a rendering of a webpage (e.g., via a browser). In one exemplary embodiment, website image 142 is a scaled version of a rendering of the webpage according to a size specified corresponding to a multimedia container. In another embodiment, website image 142 is an image determined and selected from the content of the website corresponding to website image 142. Website image 142 is operable to be selected (e.g., via a touch or press) and is operable to launch a web browser to display the website corresponding to website image 142. Website image 142 and other objects within a multimedia container may be updated periodically (e.g., hourly, daily, and the like). In one embodiment, website image 142 and other objects are updated each time a user accesses the content corresponding to the object (e.g., the website corresponding to website image 142).

Video image 144 corresponds to a video (e.g., stored locally on device 100 or available over a communications network). In one embodiment, video image 144 is a scaled version (e.g., thumbnail) of a key frame of a video with an optional title. In one exemplary embodiment, video image 144 is a scaled version of a key frame of the video scaled according to a size specified corresponding to a multimedia container. Video image 144 is operable to be selected (e.g., via a touch or press) and is operable to launch a video application (e.g., for a video stored locally on device 100 or available for streaming) or launch a website with the video corresponding to video image 144.

Application icon 146 corresponds to an application and is selectable to launch the corresponding application. In one exemplary embodiment, application icon 146 corresponds to a calendar application and application icon 146 comprises an image of a calendar with the current date and text below with the name of the application.

Widget 148 is a widget and is operable to display live, auto-updating content. In one exemplary embodiment, widget 148 is a clock widget operable to display the current time. In one embodiment, widget 148 is operable to be selected (e.g., via touch or press) and upon selection launch a corresponding application (e.g., a clock application with alarm, timer, and stopwatch functionality).

Recommendation area 120 is operable to display recommendations of content (e.g., free or pay content) based on the objects of a multimedia container (e.g., based on the metadata associated with the objects of a multimedia container). In one embodiment, recommendation area 120 includes images representing content that is recommended based on the pieces of content (and/or applications and widgets) in the multimedia container.

Control icons 160-164 are operable for navigation of a plurality of multimedia containers and switching applications. Back control 160 is operable for navigation to a previous multimedia container. In one embodiment, the multimedia containers are organizations in a hierarchical manner. Home control 162 is operable for navigating to a home screen for viewing a home multimedia container. Recent apps button 164 is operable to invoke a function for changing applications.

FIG. 2 shows an exemplary graphical user interface of a multimedia container comprising more objects than fit on a display of an exemplary device in accordance with one embodiment of the present invention. FIG. 2 depicts an exemplary graphical user interface and corresponding portions of a multimedia counter displayed on a display of an exemplary mobile device (e.g., exemplary mobile device 100). In one embodiment, exemplary graphical user interface 200 includes elements similar to exemplary graphical user interface 100. Exemplary graphical user interface 200 includes multimedia container name 208 and object area 212. Area 202 corresponds to a portion of graphical user interface 200 displayed on a display (e.g., screen 102 of a mobile device).

Multimedia container of graphical user interface diagram 200 has a container name 208 of “Baseball.” Object area 212 comprises multimedia container image 150, image 152, book image 154, book image 156, video image 244, and application icon 246. Objects within object area 212 are selectable to launch a corresponding application or corresponding application for rendering content corresponding to the object in object area 212. Objects within object area 212 may be moved around (e.g., via dragging after selection via pressing and holding) or resized (e.g., via pressing and holding and manipulating a size control).

Multimedia container image 150 is a multimedia media container with a name of “Baseball Stats” and the corresponding multimedia container may include a variety of baseball statistic content (e.g., spreadsheets used by a coach to track a team, manuals, forms, and other content related to tracking of baseball statistics). In one embodiment, multimedia container image 150 comprises images of objects within the multimedia container corresponding to multimedia image 150. In one exemplary embodiment, multimedia container image 150 includes an outerframe and triangle (e.g., as shown in FIG. 2) to indicate to a user that multimedia container image 150 corresponds to a multimedia container and selecting (e.g., via touch or press) launches or opens the corresponding multimedia container. Multimedia container image 150 may be selected with a press and hold and then dragged around to move multimedia container image 150.

Image 152 corresponds to an image (e.g., scaled image, thumbnail, or the like) of an image that is stored on device 100. In one exemplary embodiment, image 152 is a scaled version of a child pitching a baseball. Image 152 is selectable (e.g., via a touch or press) and is operable to launch an image viewing application to display an image corresponding to image 152 at full resolution.

Book image 154 comprises a book cover. In one exemplary embodiment, book image 154 corresponds to a book entitled “The Complete Guide To Baseball Coaching.” Book image 154 is operable to be selected (e.g., via touch or press) and launch an e-book application or other application operable to render the book corresponding to book image 154.

Book image 156 comprises an audio book cover. In one exemplary embodiment, book image 156 corresponds to an audio book entitled “The Complete Guide To Baseball Coaching.” Book image 156 is operable to be selected (e.g., via touch or press) and launch an audio book rendering application or other application operable to render one or more audio files corresponding to book image 156.

Application icon 246 corresponds to an application and is selectable to launch the corresponding application. In one exemplary embodiment, application icon 246 corresponds to a calendar application and application icon 246 comprises an image of a calendar with the current date and text below with the name of the application.

Video image 244 corresponds to a video (e.g., stored locally on device 100 or available over a communications network). In one embodiment, video image 244 is a scaled version (e.g., thumbnail) of a key frame of a video with an optional title. In one exemplary embodiment, video image 244 is a scaled version of a key frame of the video scaled according to a size specified corresponding to a multimedia container. Video image 244 is operable to be selected (e.g., via a touch or press) and is operable to launch a video application (e.g., for a video stored locally on device 100 or available for streaming) or launch a website with the video corresponding to video image 244.

During display of area 202, multimedia container image 150, image 152, book image 154, book image 156, a portion of application icon 246, and a portion of video image 244 are displayed (e.g., the images within area 202). In one embodiment, in response to user input (e.g., a flicking or dragging motion with a finger), area 202 displays the images of dotted area 204. During display of area 204, image 152, application icon 246, book image 156, and video image 244 are displayed. In one embodiment, display of area 204 further includes a portion of multimedia container image 150. The screen of a device (e.g., mobile device 100) may thus act as a window or viewport into the contents of the multimedia container. The user can thus scroll the window to the right or left to access the content of the multimedia container.

Embodiments of the present invention support scrolling navigation of the objects of the multimedia container to any position between area 202 and area 204. For example, during scrolling, application icon 246 may be entirely displayed while a portion of video image 244 is displayed. As another example, a user may scroll half way over to see more objects and then scroll back to see fewer objects. Objects of the multimedia container may straddle borders of the screen.

Object area 212 may be increased in size as objects (e.g., applications, pieces of content, widgets, and other multimedia containers) are added to the multimedia container. Object area 212 may be decreased in size when objects are removed from the multimedia container. Bracket 220 corresponds to the size of the multimedia container before addition of the application corresponding to application icon 246 and the video corresponding to video image 244. Bracket 222 corresponds to the size (e.g., increased) of the multimedia container after the addition of the application corresponding to application icon 246 and the video corresponding to video image 244. The changing of the size of the multimedia container in the horizontal direction is for exemplary purposes and embodiments of the present invention are not limited as such. Embodiments of the present invention are operable for increasing the size of a multimedia container in both horizontal and/or vertical directions.

In one exemplary embodiment, the multimedia container (e.g., object area 212 of the multimedia container) “grows” (e.g., wider to the right/left or taller up/down) as objects are added to the multimedia container and the multimedia container can grow larger than the screen (e.g., of the mobile device). The multimedia container may thus grow indefinitely (e.g., to the right/left or up/down) as objects are added to the multimedia container.

Object area 212 may also be increased or decreased in size based on the resizing of images corresponding to objects of a multimedia container. For example, as a user adjusts the size of video image 244, the size of object area 212 may be dynamically adjusted according to the changes in the size of video image 244.

With reference to FIGS. 3 and 5, flowcharts 300 and 500 illustrate example functions used by various embodiments of the present invention for managing multimedia containers and rendering graphical user interfaces, respectively. Although specific function blocks (“blocks”) are disclosed in flowcharts 300 and 500, such steps are examples. That is, embodiments are well suited to performing various other blocks or variations of the blocks recited in flowcharts 300 and 500. It is appreciated that the blocks in flowcharts 300 and 500 may be performed in an order different than presented, and that not all of the blocks in flowcharts 300 and 500 may be performed.

FIG. 3 shows a flowchart of an exemplary computer controlled process for managing a multimedia container in accordance with one embodiment of the present invention. FIG. 3 depicts process 300 for managing a multimedia container and in one embodiment, a process for managing a size of a multimedia container (e.g., during addition and deletion of objects and changes in sizes of objects). In one exemplary embodiment, process 300 may be used to add and/or remove items and dynamically change the size of a home multimedia container, as described herein.

At block 302, a request to add a first object to a multimedia container is received within a mobile device. The multimedia container is operable to comprise one or more applications, widgets, pieces of content, and other multimedia containers. In one embodiment, a first size attribute corresponds to the multimedia container. The first object may be a piece of content, an application, a widget, or other multimedia container.

At block 304, a data store corresponding to the multimedia container is accessed. In one embodiment, the datastore comprises information related to the objects of the multimedia container and size attributes of the multimedia container.

At block 306, the first object is added to the multimedia container. In one embodiment, the data store corresponding to the multimedia container is updated to reflect the added objects.

At block 308, an image corresponding to the first object is determined. In one exemplary embodiment, the image is user resizable. In one embodiment, the image corresponding to the first object is operable to extend beyond a display of the mobile device during display of the image.

At block 310, the second size attribute based on the image is determined. The size attribute of the image is determined based on the size (e.g., horizontal and/or vertical) of the image.

At block 312, the first size attribute corresponding to the multimedia container is adjusted. In one embodiment, the first size attribute of the multimedia container is increased based on a second size attribute of the first object when the first object is added. In one embodiment, the first size attribute of the multimedia container is dynamically configured based on a plurality of objects within the multimedia container.

At block 314, a subset of a plurality of objects of the multimedia container is displayed. In one embodiment, the subset of the plurality of objects of the multimedia container is the objects that can be displayed on the display at one time. The subset may be based on the display size (e.g., screen size and resolution) and the plurality of objects of the multimedia container (e.g., and the sizes of the image corresponding to each of the plurality of objects of the multimedia container). Each object being displayed may be operable for selection. Block 330, block 302, or block 316 may then be performed.

At block 316, a request to resize the image corresponding to the first image may be optionally received. The request may further include a request to change the location of the image (e.g., to a location beyond the edge of the current size of the multimedia container) or a location such that a portion of the image extends beyond the edge of the display.

At block 318, the first size attribute corresponding to the multimedia container based on the request to resize the image is adjusted. The first size attribute of the multimedia container may be increased if the image size is increased or decreased if the image size is decreased. Block 314 may then be performed.

At block 330, a request to remove a second object from the multimedia container is optionally received within a mobile device. The second object may be a piece of content, an application, a widget, other multimedia container.

At block 332, a data store corresponding to the multimedia container is accessed (e.g., by a mobile device).

At block 334, the second object is removed from the multimedia container. In one embodiment, the datastore corresponding to the multimedia container is updated to remove the second object and data corresponding to the second object. Block 312 may then be performed and the size of the multimedia container adjusted.

FIG. 4 shows an exemplary graphical user interface of a multimedia container during navigation in accordance with one embodiment of the present invention. FIG. 4 depicts an exemplary operation of scrolling of multimedia container displayed on a mobile device. FIG. 4 further depicts a multimedia container having more objects than can be displayed on a display screen at one time. Embodiments of the present invention are operable to allow selection of an object (e.g., via selection of the corresponding image) while the image corresponding to the object is partially displayed. In one embodiment, graphical user interface 400 is a home page or “screen” that is displayed (e.g., as part of an operating system) upon loading of the operating system, waking of the mobile device (e.g., from a low power state), or invoking a home function (e.g., via a home button).

Graphical user interface 400 comprises images corresponding to objects of a multimedia container (e.g., a home multimedia container or other multimedia container) and allows selection of a respective image to access a corresponding object of the multimedia container. Graphical user interface 400 depicts a “zoomed-out” view showing each object accessible by graphical user interface 400. It is noted that a portion of the objects of the multimedia container may be displayed at given time. Area 402 corresponds to an exemplary visible portion of graphical user interface 400 displayed on a display of a mobile device and the visible portion includes a first subset of the plurality of objects of the multimedia container. In one exemplary embodiment, area 402 includes a listening multimedia container, a reading multimedia container, and a watching multimedia container.

The objects beneath bracket 450 are objects 410 that are located in the non-visible portion or area of the multimedia container (e.g., the remainder of objects outside of area 402). One or more objects (e.g., movie 416) may be part of a second subset of objects on non-visible portion of the multimedia container.

An input (e.g., navigation input) may then be received to invoke display of the second subset of objects of the multimedia container. In one exemplary embodiment, the input is a navigation or scrolling command to the cause the mobile device to navigate to display a non-visible portion of the multimedia container. For example, the input may be a flicking gesture (e.g., from right to the left) on a touch screen of the mobile, a button press, or activation of a scrollwheel or trackpad.

In response to the input, the second subset of objects that were located on a non-visible portion of the multimedia container may be displayed. In one embodiment, a portion of the first subset of objects that were displayed may remain displayed, while the remaining portion of the first subset of objects that were displayed on the display screen would be off of the screen (e.g., moved off of the screen) and thus no longer visible.

After the scrolling, the objects of area 402 that were visible on the display screen may be updated to display the objects which are within dotted outline area 404. As illustrated, some of the objects that were visible (e.g., of area 402) are no longer visible (e.g., the reading and listening multimedia containers are off-screen). Other objects of the multimedia container (e.g., watching multimedia container) may remain visible. Further, a subset of objects that was not previously visible (e.g., movie item 416) may now be visible. The objects displayed in dotted outlined area 404 are operable for selection. In one embodiment, the scrolling may be stopped at the point indicated by dotted outlined area 404.

In one exemplary embodiment, graphical user interface 400 comprises a multimedia container, display logic, scroll logic, and object add logic. The multimedia container is operable for containing applications, widgets, other multimedia containers, and other different pieces of content. The contents of the multimedia container may be displayed in an area having upper side 420, left side 422, lower side 424, and right side 426. In one exemplary embodiment, at lease one of the pieces of content is selected from the group comprising an audio file, video file, a website, a picture, an electronic book, and an audio book.

The multimedia container may have an area defined by an upper boundary, a lower boundary, a first side boundary, and a second side boundary. The display logic is operable for displaying a portion of the multimedia container within a display region of a display screen of a computer system. The scroll logic is operable for allowing a different portion of the multimedia container to be displayed within the display region of the display screen responsive to a user scroll input. The object add logic is operable for allowing a user to add additional objects to the multimedia container. The first side boundary (e.g., left side 422 or right side 426) may be adjusted to increase the area of the multimedia container responsive to and to accommodate the additional objects being added to the multimedia container.

In one embodiment, the first side boundary is right side 426 and the second side boundary is left side 422. In another embodiment, the first side boundary is a left side 422 and the second side boundary is a right side 426. In one exemplary embodiment, upper boundary (e.g., upper side 420), lower boundary (e.g., lower side 424) and second side boundary (e.g., left side 422 or right side 426) are fixed.

FIG. 5 shows a flowchart of an exemplary computer controlled process for displaying objects of a multimedia container during navigation in accordance with one embodiment of the present invention. FIG. 5 depicts a process 500 for displaying one or more subsets of a plurality of objects of a multimedia container (e.g., based on the size of a display). In one exemplary embodiment, process 500 display subsets of objects of a home screen and corresponding multimedia container, as described herein.

At block 502, a first subset of a plurality of objects of a multimedia container is displayed on a mobile device. As described herein, the multimedia container is operable to comprise one or more applications, widgets, pieces of content, and other multimedia containers. The plurality of objects may be greater in size (e.g., occupy more space) than can be displayed at one time on the display region of a mobile device (e.g., tablet computing device or smartphone). The plurality of objects of the multimedia container may extend beyond a display region of the mobile device (e.g., and span or straddle the edge of the screen).

In one embodiment, the multimedia container is a home multimedia container that is displayed as part of a home page or “screen,” displayed upon loading, unlocking, waking, or accessing a home feature of the operating system. A home screen may display a subset of the objects of the home multimedia container. The home screen may have a visible portion and a non-visible portion. The visible portion may be displayed on the display screen of the mobile device and the non-visible portion of the home screen may be off-screen. For example, a first subset of a plurality of objects of the home multimedia container may be located on the visible portion, while a second subset of a plurality of objects may be located on the non-visible portion.

In one exemplary embodiment, an image corresponding to a first object of the first subset of the plurality of objects extends beyond an edge of a display region of the mobile device during the displaying of the first subset of the plurality of objects of the multimedia container. In another embodiment, a portion of an image corresponding to a first object of the first subset of the plurality of objects is displayed adjacent to the edge of the display region of the mobile device during the displaying of the first subset of the plurality of objects of the multimedia container.

At block 504, an input is received. In one embodiment, the input comprises a navigation command received via a touch screen of the mobile device.

At block 506, in response to the input, a second subset of the plurality objects of the multimedia container and a portion of the first subset of plurality of objects of the multimedia container are displayed (e.g., in a scrolling manner). Each object being displayed may be operable for selection (e.g., to access the piece of content, application, widget, or multimedia container) including during partial display of an image that corresponds to the object. In one exemplary embodiment, the second subset of the plurality of objects of the multimedia container and the portion of the first subset of the plurality of objects of the multimedia container are simultaneously displayed. In one embodiment, the first subset of the plurality of objects and the second subset of the plurality of objects are displayed in a contiguous scrolling area. In another embodiment, the displaying of the first subset of objects of the plurality of objects of the multimedia container and the second subset of the plurality of objects of the multimedia container comprises displaying images corresponding to each object of the first and second subsets of the plurality of objects of the multimedia container.

FIG. 6 an exemplary graphical user interface of a home page or “screen” in accordance with one embodiment of the present invention. In one embodiment, FIG. 6 depicts a home screen, on which a user can navigate, e.g., scroll to reveal previously non-displayed objects and to remove objects displayed on the screen. In one embodiment, the home screen of graphical user interface 600 comprises images corresponding to one or more applications, widgets, pieces of content, and multimedia containers. In another embodiment, the home screen of graphical user interface 600 may include only application icons. Elements 100-110, 120, and 160-164 may have functionality substantially similar to similarly numbered elements as described with respect to FIG. 1.

FIG. 6 depicts a home screen corresponding to a home multimedia container that may be presented upon boot up of an operating system or during interaction with an operating system (e.g., after unlocking, waking, or upon pressing of a home button or icon). The home screen of graphical user interface 600 may be the first screen displayed to a user upon power-up or loading of the operating system or when a “home” button/icon is pressed (e.g., home control 162). Home multimedia container of graphical user interface diagram 600 has a container name 608 of home.

The allowable space for placement of objects within the home screen is allowed to expand beyond the viewable area of the display of the mobile device. A user can thus scroll around the home screen using a user interface touch panel (e.g., touch screen) associated with the display.

Images 650-654 and 670 correspond to respective multimedia containers. Image 650 corresponds to a reading multimedia container. Image 652 corresponds to an entertainment multimedia container. Image 654 corresponds to a social multimedia container. Image 670 corresponds to a web browsing multimedia container. Image 656 is an image (e.g., icon) corresponding to a calendar application. Image 658 is an image (e.g., icon) corresponding to a browser application.

In one embodiment, multimedia containers are organized in a hierarchical format with a home multimedia container at the top or root of the hierarchy. Multimedia containers can then be created in the home multimedia container. Multimedia containers can be then created in the multimedia containers created within the home multimedia container. For example, a music multimedia container could be created in the home multimedia container. Within the music multimedia container a jazz multimedia container and a classical multimedia container could be created. Within the jazz multimedia container a smooth jazz multimedia container and a jazz fusion multimedia container could be created. The home screen may thus display or present the multimedia container at the top (e.g., root) of the hierarchy.

Upon display of home screen of graphical user interface, area 602 may be displayed with the images 650-654, images 656-658, and a portion of image 670 (e.g., the portion within area 602). In one embodiment, area 602 corresponds to visible portion of the home screen, while objects (or portions thereof) that are outside of area 602 are in the non-visible portion of the home screen. A user may navigate (e.g., scroll) to the right (e.g., by flicking left) to have area 604 of the home screen displayed. Area 604 includes images 652-658, and image 670. Area 604 now becomes the visible portion of the home screen while multimedia containers 650 and 654 are now in the non-visible portion of the home screen.

The size of the home screen may be dynamically changed or adjusted as objects are added or removed from the home multimedia container. For example, the size (e.g., horizontal size) of the home multimedia container may have been expanded when web browsing multimedia container corresponding to image 670 was added to the home multimedia container, as described herein. As another example, the size (e.g., horizontal size) of the home multimedia container may be reduced when web browsing multimedia container corresponding to image 670 is removed from the home multimedia container, as described herein. The home screen of graphical user interface 600 thereby allows a user to scroll around the home screen to view objects were once non-visible or not display.

FIG. 7 illustrates exemplary components used by various embodiments of the present invention. Although specific components are disclosed in computing system environment 700, it should be appreciated that such components are exemplary. That is, embodiments of the present invention are well suited to having various other components or variations of the components recited in computing system environment 700. It is appreciated that the components in computing system environment 700 may operate with other components than those presented, and that not all of the components of system 700 may be required to achieve the goals of computing system environment 700.

FIG. 7 shows a block diagram of exemplary computer system and corresponding modules, in accordance with one embodiment of the present invention. With reference to FIG. 7, an exemplary system module for implementing embodiments includes a general purpose computing system environment, such as computing system environment 700. Computing system environment 700 may include, but is not limited to, servers, desktop computers, laptops, tablet PCs, tablet computing devices, mobile devices, and smartphones. In its most basic configuration, computing system environment 700 typically includes at least one processing unit 702 and computer readable storage medium 704. Depending on the exact configuration and type of computing system environment, computer readable storage medium 704 may be volatile (such as RAM), non-volatile (such as ROM, flash memory, etc.) or some combination of the two. Portions of computer readable storage medium 704 when executed facilitate efficient execution of memory operations or requests for groups of threads. Computing system environment 700 may further include a power source (e.g., battery) (not shown) operable to allow computing system environment 700 to be movable and mobile while operating.

Additionally, computing system environment 700 may also have additional features/functionality. For example, computing system environment 700 may also include additional storage (removable and/or non-removable) including, but not limited to, magnetic or optical disks or tape. Such additional storage is illustrated in FIG. 7 by removable storage 708 and non-removable storage 710. Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer readable medium 704, removable storage 708 and non-removable storage 710 are all examples of computer storage media. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium which can be used to store the desired information and which can be accessed by computing system environment 700. Any such computer storage media may be part of computing system environment 700.

Computing system environment 700 may also contain communications connection(s) 712 that allow it to communicate with other devices. Communications connection(s) 712 is an example of communication media. Communication media typically embodies computer readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term computer readable media as used herein includes both storage media and communication media.

Communications connection(s) 712 may allow computing system environment 700 to communication over various networks types including, but not limited to, fibre channel, small computer system interface (SCSI), Bluetooth, Ethernet, Wi-fi, Infrared Data Association (IrDA), Local area networks (LAN), Wireless Local area networks (WLAN), Near Field Communication (NFC), Code Division Multiple Access (CDMA), Global System for Mobile Communications (GSM), Long-term Evolution (LTE), Worldwide Interoperability for Microwave Access (WiMax), wide area networks (WAN) such as the internet, serial, and universal serial bus (USB). It is appreciated the various network types that communication connection(s) 712 connect to may run a plurality of network protocols including, but not limited to, transmission control protocol (TCP), internet protocol (IP), real-time transport protocol (RTP), real-time transport control protocol (RTCP), file transfer protocol (FTP), and hypertext transfer protocol (HTTP).

Computing system environment 700 may also have input device(s) 714 such as a touch screen (e.g., capacitive touch screen), keyboard, mouse, pen, voice input device, touch input device, remote control, camera, etc. Output device(s) 716 such as a display (e.g., touch screen), speakers, etc. may also be included. All these devices are well known in the art and are not discussed at length.

In one embodiment, computer readable storage medium 704 includes input module 706, size module 930, data store access module 740, and display module 750.

Input module 706 is operable to receive input for adding and/or removing an object to a multimedia container. In one exemplary embodiment, input module 706 includes add/remove module 720, navigation module 722, resize object module 724, and selection module 726.

Add/remove module 720 is operable for receiving input relating to the adding and removing of objects from a multimedia container. Navigation module 722 is operable to receive input to allow navigation around in a displayed multimedia container, as described herein, e.g., scrolling through the multimedia container. In one embodiment, the multimedia container is a home multimedia container displayed as part of a home screen and navigated via navigation module 722.

Resize object module 724 is operable to receive input for resizing an image corresponding to an object in the multimedia container. Selection module 726 is operable to receive input for selection of an object (e.g., piece of content, application, widget, or multimedia container) displayed as part of the multimedia container and operable for invoking the corresponding application to thereby allow access to the object (e.g., piece of content, application, widget, or open a multimedia container).

Size module 730 is operable to adjust a size corresponding to the multimedia container based on an object being added or removed from the multimedia container. Size module 730 is operable to adjust the size corresponding to the multimedia container to be greater than at least one of a height or a width of a screen of the mobile device. Size module 730 is operable to dynamically increase and decrease the size corresponding to the multimedia container based on a plurality of objects of the multimedia container. In one embodiment, the size corresponding to the multimedia container is a horizontal size, as described herein. Size module 730 may further include object add logic as described herein.

In one embodiment, size module 730 includes resize module 732 and resize determination module 734. Resize module 732 is operable for resizing an image corresponding to an object of the multimedia container (e.g., based on input from input module 706). Resize determination module 734 is operable to determine a size change to be applied to the multimedia container based on the adding or removing of objects and resizing of objects.

Data store access module 740 is operable to access a data store, within a mobile device, corresponding to a multimedia container. The multimedia container is operable to comprise one or more applications, widgets, pieces of content, and other multimedia containers. The multimedia container may have one or more size attributes, as described herein.

Display module 750 is operable to display a respective image for each object of a subset of a plurality of objects of the multimedia container and operable for scroll navigation of the multimedia container (e.g., to allow scrolling among different subsets of objects of the multimedia container). In one embodiment, display module 750 is operable for navigation of the multimedia container in a contiguous scrolling area. In one exemplary embodiment, display module 750 is operable to display a home screen and correspondingly display subsets of a plurality of objects of a home multimedia container as part of a home screen, as described herein. Display module 750 may include display logic and scroll logic as described herein.

The foregoing descriptions of specific embodiments of the present invention have been presented for purposes of illustration and description. They are not intended to be exhaustive or to limit the invention to the precise forms disclosed, and many modifications and variations are possible in light of the above teaching. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, to thereby enable others skilled in the art to best utilize the invention and various embodiments with various modifications as are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the claims appended hereto and their equivalents. 

What is claimed is:
 1. A method for managing a multimedia container, said method comprising: receiving, within a mobile device, a request to add a first object to a multimedia container, wherein said multimedia container is operable to comprise one or more applications, widgets, and pieces of content, and wherein a first size attribute corresponds to said multimedia container; accessing a data store corresponding to said multimedia container; adding said first object to said multimedia container; and adjusting said first size attribute corresponding to said multimedia container, wherein said first size attribute of said multimedia container is increased based on a second size attribute of said first object.
 2. The method as described in claim 1, further comprising: determining an image corresponding to said first object; and determining said second size attribute based on said image.
 3. The method as described in claim 2, wherein said image is user resizable.
 4. The method as described in claim 3, further comprising: receiving a request to resize said image corresponding to said first image; and adjusting said first size attribute corresponding to said multimedia container based on said request to resize said image.
 5. The method as described in claim 4, wherein said first size attribute of said multimedia container is dynamically configured based on a plurality of objects within said multimedia container.
 6. The method as described in claim 1, wherein said image corresponding to said first object is operable to extend beyond a screen during display.
 7. The method as described in claim 1, wherein said first object is a piece of content.
 8. A computer-readable storage medium having stored thereon, computer executable instructions that, if executed by a computer system cause the computer system to perform a method for rendering a graphical user interface, said method comprising: displaying, on a mobile device, a first subset of a plurality of objects of a multimedia container, wherein said multimedia container is operable to comprise one or more applications, widgets, and pieces of content, wherein said plurality of objects of said multimedia container extends beyond a display region of said mobile device; receiving an input; and in response to said input, displaying a second subset of said plurality objects of said multimedia container and a portion of said first subset of plurality of objects of said multimedia container.
 9. The computer-readable storage medium as described in claim 8, wherein said second subset of said plurality of objects of said multimedia container and said portion of said first subset of said plurality of objects of said multimedia container are simultaneously displayed.
 10. The computer-readable storage medium as described in claim 8, wherein said first subset of said plurality of objects and said second subset of said plurality of objects are displayed in a contiguous scrolling area.
 11. The computer-readable storage medium as described in claim 8, wherein an image corresponding to a first object of said first subset of said plurality of objects extends beyond an edge of said display region of said mobile device during said displaying of said first subset of said plurality of objects of said multimedia container.
 12. The computer-readable storage medium as described in claim 8, wherein a portion of an image corresponding to a first object of said first subset of said plurality of objects is displayed adjacent to said edge of said display region of said mobile device during said displaying of said first subset of said plurality of objects of said multimedia container.
 13. The computer-readable storage medium as described in claim 8, wherein said displaying of said first subset of objects of said plurality of objects of said multimedia container and said second subset of said plurality of objects of said multimedia container comprises displaying images corresponding to each object of the first subset and second subset of said plurality of objects of said multimedia container.
 14. The computer-readable storage medium as described in claim 8, wherein said mobile device is a tablet computing device.
 15. The computer-readable storage medium as described in claim 8, wherein said input comprises a navigation command received via a touch screen of said mobile device.
 16. A system for rendering a graphical user interface, said system comprising: a data store access module operable to access a data store, within a mobile device, corresponding to a multimedia container, wherein said multimedia container is operable to comprise one or more applications, widgets, and pieces of content; an input module operable to receive input for adding an object to said multimedia container; and a size module operable to adjust a size corresponding to said multimedia container based on an object to be added to said multimedia container; a display module operable to display a respective image for each object of a subset of a plurality of objects of said multimedia container and operable for scrolling navigation of said multimedia container.
 17. The system as described in claim 16, wherein said display module is operable for navigation of said multimedia container in a contiguous scrolling area.
 18. The system as described in claim 16, wherein said size module is operable to adjust said size corresponding to said multimedia container to be greater than at least one of a height or a width of a screen of said mobile device.
 19. The system as described in claim 16, wherein said size module is operable to dynamically increase and decrease said size corresponding to said multimedia container based on a plurality of objects of said multimedia container.
 20. The system as described in claim 16, wherein said size corresponding to said multimedia container is a horizontal size and said input module is operable to receive input for resizing an image corresponding to said object to be added to said multimedia container.
 21. A graphical user interface comprising: a multimedia container for containing applications, widgets, other multimedia containers, and other different pieces of content, said multimedia container having an area defined by an upper boundary, a lower boundary, a first side boundary and a second side boundary; display logic for displaying a portion of said multimedia container within a display region of a display screen of a computer system; scroll logic for allowing a different portion of said multimedia container to be displayed within said display region of said display screen responsive to a user scroll input; object add logic for allowing a user to add additional objects to said multimedia container, wherein said first side boundary is adjusted to increase said area of said multimedia container responsive to and to accommodate said additional objects being added to said multimedia container.
 22. A graphical user interface as described in claim 21 wherein said first side boundary is a right side and wherein said second side boundary is a left side.
 23. A graphical user interface as described in claim 21 wherein said first side boundary is a left side and wherein said second side boundary is a right side.
 24. A graphical user interface as described in claim 21 wherein said upper boundary, said lower boundary and said second side boundary are fixed.
 25. A graphical user interface as described in claim 21 wherein at lease one of said pieces of content is selected from the group comprising an audio file, video file, a website, a picture, an electronic book, and an audio book. 